var name = "window";

var person = {
  name: "person",
  sayName: function () {
    console.log(this.name);
  }
};

function sayName() {
  var sss = person.sayName;  // 方法取出来赋值给sss

  sss(); // 默认绑定, this -> window

  person.sayName(); //隐式绑定, this -> person .的优先级>()

  (person.sayName)(); //隐式绑定, this -> person

  (b = person.sayName)(); // 间接函数引用, this -> window  b = person.sayName表达式的结果是一个独立的函数
}

sayName();
